package cn.mrdjun.redis.stater.ratelimiter;

import java.lang.annotation.*;

/**
 * 防并发过载 - 接口限流
 * 使用该注解请合理控制当前接口的QPS大小 QPS = capacity / rate
 *
 * @author DengJun 2021/3/23
 */
@Inherited
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface RateLimit {
    /**
     * 令牌桶的容量，默认100
     */
    int capacity() default 100;

    /**
     * 每秒钟默认产生令牌数量，默认10个
     */
    int rate() default 10;
}